package com.mycompany.crm.dao;

import com.mycompany.crm.base.BaseMapper;
import com.mycompany.crm.vo.Permission;

import java.util.List;

public interface PermissionMapper extends BaseMapper<Permission, Integer> {

    // 通过角色ID查询权限记录
    Integer countPermissionByRoleId(Integer roleId);

    // 通过角色ID删除权限记录
    void deletePermissionByRoleId(Integer roleId);

    //查询角色拥有的所有的资源Id的集合
    List<Integer> queryRoleHasModuleIdsByRoleId(Integer roleId);

    //通过用户拥有的角色所对应的资源，得到用户拥有的资源列表(资源权限码)
    List<String> queryUserRoleHasPermissionByUserId(Integer userId);

    //通过资源id查询权限表中是否存在数据
    Integer countPermissionByModuleId(Integer id);

    //通过资源ID删除权限记录
    void deletePermissionByModuleId(Integer id);
}